package 完全二叉树的节点个数;

public class Solution2 {

    public int countNodes(TreeNode root) {
        // 递归 时间复杂度：O(n) 空间复杂度：O(n)
        // 参数：根节点 返回值：当前节点所代表的子树的总节点数
        // 终止条件：root == null
        // 单层递归逻辑：当前节点不为null 则继续遍历其左右子树
        //             当前节点为null 则结束递归并返回0
        if (root == null)
            return 0;
        else
            return 1 + countNodes(root.left) + countNodes(root.right);
    }
}
